package com.hjw.rabbitmq.springbootorderrabbitmqproducer.config;

import org.springframework.amqp.core.Binding;

import org.springframework.amqp.core.BindingBuilder;
import org.springframework.amqp.core.FanoutExchange;
import org.springframework.amqp.core.Queue;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

@Configuration
public class RabbitMqConfiguration {
    //声明fanout模式交换机
    //声明队列
//    //完成绑定关系
    @Bean
    public FanoutExchange fanoutExchange(){
        return new FanoutExchange("fanout_order_exchange",true,false);
    }
    @Bean
    public Queue smsQueue(){
        return new Queue("sms.fanout.queue",true);
    }
    @Bean
    public Queue duanxinQueue(){
        return new Queue("duanxin.fanout.queue",true);
    }
    @Bean
    public Queue emailQueue(){
        return new Queue("email.fanout.queue",true);
    }

//    @Bean
//    public Binding smsBinding(){
//        return new BindingBuilder.bind(smsQueue()).to(fanoutExchange());
//    }
//    @Bean
//    public Binding duanxinBinding(){
//        return new BindingBuilder.bind(duanxinQueue()).to(fanoutExchange());
//    }
//    @Bean
//    public Binding emailBinding(){
//        return new BindingBuilder.bind(emailQueue()).to(fanoutExchange());
//    }
}
